package org.apache.commons.compress.archivers.zip; class ExtraFieldUtils { void a() { int a;
a=0;// .class public Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;
a=0;// .super Ljava/lang/Object;
a=0;// .source "ExtraFieldUtils.java"
a=0;// 
a=0;// 
a=0;// # static fields
a=0;// .field private static final a:Ljava/util/Map;
a=0;// 
a=0;// 
a=0;// # direct methods
a=0;// .method static constructor <clinit>()V
a=0;//     .locals 1
a=0;// 
a=0;//     .prologue
a=0;//     .line 41
a=0;//     new-instance v0, Ljava/util/concurrent/ConcurrentHashMap;
a=0;// 
a=0;//     #v0=(UninitRef,Ljava/util/concurrent/ConcurrentHashMap;);
a=0;//     invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;-><init>()V
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/concurrent/ConcurrentHashMap;);
a=0;//     sput-object v0, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;->a:Ljava/util/Map;
a=0;// 
a=0;//     .line 42
a=0;//     const-class v0, Lorg/apache/commons/compress/archivers/zip/AsiExtraField;
a=0;// 
a=0;//     invoke-static {v0}, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;->a(Ljava/lang/Class;)V
a=0;// 
a=0;//     .line 43
a=0;//     const-class v0, Lorg/apache/commons/compress/archivers/zip/X5455_ExtendedTimestamp;
a=0;// 
a=0;//     invoke-static {v0}, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;->a(Ljava/lang/Class;)V
a=0;// 
a=0;//     .line 44
a=0;//     const-class v0, Lorg/apache/commons/compress/archivers/zip/X7875_NewUnix;
a=0;// 
a=0;//     invoke-static {v0}, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;->a(Ljava/lang/Class;)V
a=0;// 
a=0;//     .line 45
a=0;//     const-class v0, Lorg/apache/commons/compress/archivers/zip/JarMarker;
a=0;// 
a=0;//     invoke-static {v0}, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;->a(Ljava/lang/Class;)V
a=0;// 
a=0;//     .line 46
a=0;//     const-class v0, Lorg/apache/commons/compress/archivers/zip/UnicodePathExtraField;
a=0;// 
a=0;//     invoke-static {v0}, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;->a(Ljava/lang/Class;)V
a=0;// 
a=0;//     .line 47
a=0;//     const-class v0, Lorg/apache/commons/compress/archivers/zip/UnicodeCommentExtraField;
a=0;// 
a=0;//     invoke-static {v0}, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;->a(Ljava/lang/Class;)V
a=0;// 
a=0;//     .line 48
a=0;//     const-class v0, Lorg/apache/commons/compress/archivers/zip/Zip64ExtendedInformationExtraField;
a=0;// 
a=0;//     invoke-static {v0}, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;->a(Ljava/lang/Class;)V
a=0;// 
a=0;//     .line 49
a=0;//     return-void
a=0;// .end method
a=0;// 
a=0;// .method public constructor <init>()V
a=0;//     .locals 0
a=0;// 
a=0;//     .prologue
a=0;//     .line 31
a=0;//     invoke-direct {p0}, Ljava/lang/Object;-><init>()V
a=0;// 
a=0;//     .line 273
a=0;//     #p0=(Reference,Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;);
a=0;//     return-void
a=0;// .end method
a=0;// 
a=0;// .method private static a(Ljava/lang/Class;)V
a=0;//     .locals 3
a=0;// 
a=0;//     .prologue
a=0;//     .line 60
a=0;//     :try_start_0
a=0;//     invoke-virtual {p0}, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     #v0=(Reference,Ljava/lang/Object;);
a=0;//     check-cast v0, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;
a=0;// 
a=0;//     .line 61
a=0;//     sget-object v1, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;->a:Ljava/util/Map;
a=0;// 
a=0;//     #v1=(Reference,Ljava/util/Map;);
a=0;//     invoke-interface {v0}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->a()Lorg/apache/commons/compress/archivers/zip/ZipShort;
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     invoke-interface {v1, v0, p0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
a=0;//     :try_end_0
a=0;//     .catch Ljava/lang/ClassCastException; {:try_start_0 .. :try_end_0} :catch_0
a=0;//     .catch Ljava/lang/InstantiationException; {:try_start_0 .. :try_end_0} :catch_1
a=0;//     .catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_2
a=0;// 
a=0;//     .line 68
a=0;//     return-void
a=0;// 
a=0;//     .line 63
a=0;//     :catch_0
a=0;//     move-exception v0
a=0;// 
a=0;//     #v0=(Reference,Ljava/lang/ClassCastException;);
a=0;//     new-instance v0, Ljava/lang/RuntimeException;
a=0;// 
a=0;//     #v0=(UninitRef,Ljava/lang/RuntimeException;);
a=0;//     new-instance v1, Ljava/lang/StringBuilder;
a=0;// 
a=0;//     #v1=(UninitRef,Ljava/lang/StringBuilder;);
a=0;//     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
a=0;// 
a=0;//     #v1=(Reference,Ljava/lang/StringBuilder;);
a=0;//     invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     const-string v2, " doesn\'t implement ZipExtraField"
a=0;// 
a=0;//     #v2=(Reference,Ljava/lang/String;);
a=0;//     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
a=0;// 
a=0;//     #v0=(Reference,Ljava/lang/RuntimeException;);
a=0;//     throw v0
a=0;// 
a=0;//     .line 65
a=0;//     :catch_1
a=0;//     move-exception v0
a=0;// 
a=0;//     #v0=(Reference,Ljava/lang/InstantiationException;);
a=0;//     new-instance v0, Ljava/lang/RuntimeException;
a=0;// 
a=0;//     #v0=(UninitRef,Ljava/lang/RuntimeException;);
a=0;//     new-instance v1, Ljava/lang/StringBuilder;
a=0;// 
a=0;//     #v1=(UninitRef,Ljava/lang/StringBuilder;);
a=0;//     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
a=0;// 
a=0;//     #v1=(Reference,Ljava/lang/StringBuilder;);
a=0;//     invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     const-string v2, " is not a concrete class"
a=0;// 
a=0;//     #v2=(Reference,Ljava/lang/String;);
a=0;//     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
a=0;// 
a=0;//     #v0=(Reference,Ljava/lang/RuntimeException;);
a=0;//     throw v0
a=0;// 
a=0;//     .line 67
a=0;//     :catch_2
a=0;//     move-exception v0
a=0;// 
a=0;//     #v0=(Reference,Ljava/lang/IllegalAccessException;);
a=0;//     new-instance v0, Ljava/lang/RuntimeException;
a=0;// 
a=0;//     #v0=(UninitRef,Ljava/lang/RuntimeException;);
a=0;//     new-instance v1, Ljava/lang/StringBuilder;
a=0;// 
a=0;//     #v1=(UninitRef,Ljava/lang/StringBuilder;);
a=0;//     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
a=0;// 
a=0;//     #v1=(Reference,Ljava/lang/StringBuilder;);
a=0;//     invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     const-string v2, "\'s no-arg constructor is not public"
a=0;// 
a=0;//     #v2=(Reference,Ljava/lang/String;);
a=0;//     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
a=0;// 
a=0;//     #v0=(Reference,Ljava/lang/RuntimeException;);
a=0;//     throw v0
a=0;// .end method
a=0;// 
a=0;// .method public static a([Lorg/apache/commons/compress/archivers/zip/ZipExtraField;)[B
a=0;//     .locals 9
a=0;// 
a=0;//     .prologue
a=0;//     const/4 v8, 0x2
a=0;// 
a=0;//     #v8=(PosByte);
a=0;//     const/4 v3, 0x0
a=0;// 
a=0;//     .line 196
a=0;//     #v3=(Null);
a=0;//     array-length v0, p0
a=0;// 
a=0;//     #v0=(Integer);
a=0;//     if-lez v0, :cond_0
a=0;// 
a=0;//     array-length v0, p0
a=0;// 
a=0;//     add-int/lit8 v0, v0, -0x1
a=0;// 
a=0;//     aget-object v0, p0, v0
a=0;// 
a=0;//     #v0=(Null);
a=0;//     instance-of v0, v0, Lorg/apache/commons/compress/archivers/zip/UnparseableExtraFieldData;
a=0;// 
a=0;//     #v0=(Boolean);
a=0;//     if-eqz v0, :cond_0
a=0;// 
a=0;//     const/4 v0, 0x1
a=0;// 
a=0;//     #v0=(One);
a=0;//     move v4, v0
a=0;// 
a=0;//     .line 198
a=0;//     :goto_0
a=0;//     #v0=(Integer);v4=(Boolean);
a=0;//     if-eqz v4, :cond_1
a=0;// 
a=0;//     array-length v0, p0
a=0;// 
a=0;//     add-int/lit8 v0, v0, -0x1
a=0;// 
a=0;//     .line 201
a=0;//     :goto_1
a=0;//     mul-int/lit8 v1, v0, 0x4
a=0;// 
a=0;//     .line 202
a=0;//     #v1=(Integer);
a=0;//     array-length v5, p0
a=0;// 
a=0;//     #v5=(Integer);
a=0;//     move v2, v1
a=0;// 
a=0;//     #v2=(Integer);
a=0;//     move v1, v3
a=0;// 
a=0;//     :goto_2
a=0;//     #v6=(Conflicted);
a=0;//     if-ge v1, v5, :cond_2
a=0;// 
a=0;//     aget-object v6, p0, v1
a=0;// 
a=0;//     .line 203
a=0;//     #v6=(Null);
a=0;//     invoke-interface {v6}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->f()Lorg/apache/commons/compress/archivers/zip/ZipShort;
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     #v6=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     invoke-virtual {v6}, Lorg/apache/commons/compress/archivers/zip/ZipShort;->b()I
a=0;// 
a=0;//     move-result v6
a=0;// 
a=0;//     #v6=(Integer);
a=0;//     add-int/2addr v2, v6
a=0;// 
a=0;//     .line 202
a=0;//     add-int/lit8 v1, v1, 0x1
a=0;// 
a=0;//     goto :goto_2
a=0;// 
a=0;//     :cond_0
a=0;//     #v1=(Uninit);v2=(Uninit);v4=(Uninit);v5=(Uninit);v6=(Uninit);
a=0;//     move v4, v3
a=0;// 
a=0;//     .line 196
a=0;//     #v4=(Null);
a=0;//     goto :goto_0
a=0;// 
a=0;//     .line 198
a=0;//     :cond_1
a=0;//     #v4=(Boolean);
a=0;//     array-length v0, p0
a=0;// 
a=0;//     goto :goto_1
a=0;// 
a=0;//     .line 206
a=0;//     :cond_2
a=0;//     #v1=(Integer);v2=(Integer);v5=(Integer);v6=(Conflicted);
a=0;//     new-array v5, v2, [B
a=0;// 
a=0;//     #v5=(Reference,[B);
a=0;//     move v2, v3
a=0;// 
a=0;//     #v2=(Null);
a=0;//     move v1, v3
a=0;// 
a=0;//     .line 208
a=0;//     :goto_3
a=0;//     #v2=(Integer);v7=(Conflicted);
a=0;//     if-ge v2, v0, :cond_4
a=0;// 
a=0;//     .line 209
a=0;//     aget-object v6, p0, v2
a=0;// 
a=0;//     #v6=(Null);
a=0;//     invoke-interface {v6}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->a()Lorg/apache/commons/compress/archivers/zip/ZipShort;
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     #v6=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     invoke-virtual {v6}, Lorg/apache/commons/compress/archivers/zip/ZipShort;->a()[B
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     invoke-static {v6, v3, v5, v1, v8}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
a=0;// 
a=0;//     .line 211
a=0;//     aget-object v6, p0, v2
a=0;// 
a=0;//     #v6=(Null);
a=0;//     invoke-interface {v6}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->f()Lorg/apache/commons/compress/archivers/zip/ZipShort;
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     #v6=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     invoke-virtual {v6}, Lorg/apache/commons/compress/archivers/zip/ZipShort;->a()[B
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     add-int/lit8 v7, v1, 0x2
a=0;// 
a=0;//     #v7=(Integer);
a=0;//     invoke-static {v6, v3, v5, v7, v8}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
a=0;// 
a=0;//     .line 213
a=0;//     add-int/lit8 v1, v1, 0x4
a=0;// 
a=0;//     .line 214
a=0;//     aget-object v6, p0, v2
a=0;// 
a=0;//     #v6=(Null);
a=0;//     invoke-interface {v6}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->e()[B
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     .line 215
a=0;//     #v6=(Reference,[B);
a=0;//     if-eqz v6, :cond_3
a=0;// 
a=0;//     .line 216
a=0;//     array-length v7, v6
a=0;// 
a=0;//     invoke-static {v6, v3, v5, v1, v7}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
a=0;// 
a=0;//     .line 217
a=0;//     array-length v6, v6
a=0;// 
a=0;//     #v6=(Integer);
a=0;//     add-int/2addr v1, v6
a=0;// 
a=0;//     .line 208
a=0;//     :cond_3
a=0;//     #v6=(Conflicted);
a=0;//     add-int/lit8 v2, v2, 0x1
a=0;// 
a=0;//     goto :goto_3
a=0;// 
a=0;//     .line 220
a=0;//     :cond_4
a=0;//     #v7=(Conflicted);
a=0;//     if-eqz v4, :cond_5
a=0;// 
a=0;//     .line 221
a=0;//     array-length v0, p0
a=0;// 
a=0;//     add-int/lit8 v0, v0, -0x1
a=0;// 
a=0;//     aget-object v0, p0, v0
a=0;// 
a=0;//     #v0=(Null);
a=0;//     invoke-interface {v0}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->e()[B
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     .line 222
a=0;//     #v0=(Reference,[B);
a=0;//     if-eqz v0, :cond_5
a=0;// 
a=0;//     .line 223
a=0;//     array-length v2, v0
a=0;// 
a=0;//     invoke-static {v0, v3, v5, v1, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
a=0;// 
a=0;//     .line 226
a=0;//     :cond_5
a=0;//     #v0=(Conflicted);
a=0;//     return-object v5
a=0;// .end method
a=0;// 
a=0;// .method public static a([BZLorg/apache/commons/compress/archivers/zip/ExtraFieldUtils$UnparseableExtraField;)[Lorg/apache/commons/compress/archivers/zip/ZipExtraField;
a=0;//     .locals 6
a=0;// 
a=0;//     .prologue
a=0;//     .line 132
a=0;//     new-instance v2, Ljava/util/ArrayList;
a=0;// 
a=0;//     #v2=(UninitRef,Ljava/util/ArrayList;);
a=0;//     invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V
a=0;// 
a=0;//     .line 133
a=0;//     #v2=(Reference,Ljava/util/ArrayList;);
a=0;//     const/4 v0, 0x0
a=0;// 
a=0;//     #v0=(Null);
a=0;//     move v1, v0
a=0;// 
a=0;//     .line 135
a=0;//     :goto_0
a=0;//     #v0=(Integer);v1=(Integer);v3=(Conflicted);v4=(Conflicted);v5=(Conflicted);
a=0;//     array-length v0, p0
a=0;// 
a=0;//     add-int/lit8 v0, v0, -0x4
a=0;// 
a=0;//     if-gt v1, v0, :cond_0
a=0;// 
a=0;//     .line 136
a=0;//     new-instance v3, Lorg/apache/commons/compress/archivers/zip/ZipShort;
a=0;// 
a=0;//     #v3=(UninitRef,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     invoke-direct {v3, p0, v1}, Lorg/apache/commons/compress/archivers/zip/ZipShort;-><init>([BI)V
a=0;// 
a=0;//     .line 137
a=0;//     #v3=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     new-instance v0, Lorg/apache/commons/compress/archivers/zip/ZipShort;
a=0;// 
a=0;//     #v0=(UninitRef,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     add-int/lit8 v4, v1, 0x2
a=0;// 
a=0;//     #v4=(Integer);
a=0;//     invoke-direct {v0, p0, v4}, Lorg/apache/commons/compress/archivers/zip/ZipShort;-><init>([BI)V
a=0;// 
a=0;//     #v0=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     invoke-virtual {v0}, Lorg/apache/commons/compress/archivers/zip/ZipShort;->b()I
a=0;// 
a=0;//     move-result v4
a=0;// 
a=0;//     .line 138
a=0;//     add-int/lit8 v0, v1, 0x4
a=0;// 
a=0;//     #v0=(Integer);
a=0;//     add-int/2addr v0, v4
a=0;// 
a=0;//     array-length v5, p0
a=0;// 
a=0;//     #v5=(Integer);
a=0;//     if-le v0, v5, :cond_2
a=0;// 
a=0;//     .line 139
a=0;//     invoke-virtual {p2}, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils$UnparseableExtraField;->a()I
a=0;// 
a=0;//     move-result v0
a=0;// 
a=0;//     packed-switch v0, :pswitch_data_0
a=0;// 
a=0;//     .line 165
a=0;//     new-instance v0, Ljava/util/zip/ZipException;
a=0;// 
a=0;//     #v0=(UninitRef,Ljava/util/zip/ZipException;);
a=0;//     new-instance v1, Ljava/lang/StringBuilder;
a=0;// 
a=0;//     #v1=(UninitRef,Ljava/lang/StringBuilder;);
a=0;//     const-string v2, "unknown UnparseableExtraField key: "
a=0;// 
a=0;//     invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
a=0;// 
a=0;//     #v1=(Reference,Ljava/lang/StringBuilder;);
a=0;//     invoke-virtual {p2}, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils$UnparseableExtraField;->a()I
a=0;// 
a=0;//     move-result v2
a=0;// 
a=0;//     #v2=(Integer);
a=0;//     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     invoke-direct {v0, v1}, Ljava/util/zip/ZipException;-><init>(Ljava/lang/String;)V
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/ZipException;);
a=0;//     throw v0
a=0;// 
a=0;//     .line 141
a=0;//     :pswitch_0
a=0;//     #v0=(Integer);v1=(Integer);v2=(Reference,Ljava/util/ArrayList;);
a=0;//     new-instance v0, Ljava/util/zip/ZipException;
a=0;// 
a=0;//     #v0=(UninitRef,Ljava/util/zip/ZipException;);
a=0;//     new-instance v2, Ljava/lang/StringBuilder;
a=0;// 
a=0;//     #v2=(UninitRef,Ljava/lang/StringBuilder;);
a=0;//     const-string v3, "bad extra field starting at "
a=0;// 
a=0;//     invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
a=0;// 
a=0;//     #v2=(Reference,Ljava/lang/StringBuilder;);
a=0;//     invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v2
a=0;// 
a=0;//     const-string v3, ".  Block length of "
a=0;// 
a=0;//     invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v2
a=0;// 
a=0;//     invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v2
a=0;// 
a=0;//     const-string v3, " bytes exceeds remaining data of "
a=0;// 
a=0;//     invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v2
a=0;// 
a=0;//     array-length v3, p0
a=0;// 
a=0;//     #v3=(Integer);
a=0;//     sub-int v1, v3, v1
a=0;// 
a=0;//     add-int/lit8 v1, v1, -0x4
a=0;// 
a=0;//     invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     #v1=(Reference,Ljava/lang/StringBuilder;);
a=0;//     const-string v2, " bytes."
a=0;// 
a=0;//     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
a=0;// 
a=0;//     move-result-object v1
a=0;// 
a=0;//     invoke-direct {v0, v1}, Ljava/util/zip/ZipException;-><init>(Ljava/lang/String;)V
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/zip/ZipException;);
a=0;//     throw v0
a=0;// 
a=0;//     .line 148
a=0;//     :pswitch_1
a=0;//     #v0=(Integer);v1=(Integer);v3=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     new-instance v0, Lorg/apache/commons/compress/archivers/zip/UnparseableExtraFieldData;
a=0;// 
a=0;//     #v0=(UninitRef,Lorg/apache/commons/compress/archivers/zip/UnparseableExtraFieldData;);
a=0;//     invoke-direct {v0}, Lorg/apache/commons/compress/archivers/zip/UnparseableExtraFieldData;-><init>()V
a=0;// 
a=0;//     .line 150
a=0;//     #v0=(Reference,Lorg/apache/commons/compress/archivers/zip/UnparseableExtraFieldData;);
a=0;//     if-eqz p1, :cond_1
a=0;// 
a=0;//     .line 151
a=0;//     array-length v3, p0
a=0;// 
a=0;//     #v3=(Integer);
a=0;//     sub-int/2addr v3, v1
a=0;// 
a=0;//     invoke-virtual {v0, p0, v1, v3}, Lorg/apache/commons/compress/archivers/zip/UnparseableExtraFieldData;->a([BII)V
a=0;// 
a=0;//     .line 157
a=0;//     :goto_1
a=0;//     invoke-interface {v2, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
a=0;// 
a=0;//     .line 186
a=0;//     :cond_0
a=0;//     :pswitch_2
a=0;//     #v0=(Conflicted);v3=(Conflicted);v4=(Conflicted);v5=(Conflicted);
a=0;//     invoke-interface {v2}, Ljava/util/List;->size()I
a=0;// 
a=0;//     move-result v0
a=0;// 
a=0;//     #v0=(Integer);
a=0;//     new-array v0, v0, [Lorg/apache/commons/compress/archivers/zip/ZipExtraField;
a=0;// 
a=0;//     .line 187
a=0;//     #v0=(Reference,[Lorg/apache/commons/compress/archivers/zip/ZipExtraField;);
a=0;//     invoke-interface {v2, v0}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     check-cast v0, [Lorg/apache/commons/compress/archivers/zip/ZipExtraField;
a=0;// 
a=0;//     return-object v0
a=0;// 
a=0;//     .line 154
a=0;//     :cond_1
a=0;//     #v3=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);v4=(Integer);v5=(Integer);
a=0;//     array-length v3, p0
a=0;// 
a=0;//     #v3=(Integer);
a=0;//     sub-int/2addr v3, v1
a=0;// 
a=0;//     invoke-virtual {v0, p0, v1, v3}, Lorg/apache/commons/compress/archivers/zip/UnparseableExtraFieldData;->b([BII)V
a=0;// 
a=0;//     goto :goto_1
a=0;// 
a=0;//     .line 170
a=0;//     :cond_2
a=0;//     :try_start_0
a=0;//     #v0=(Integer);v3=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     sget-object v0, Lorg/apache/commons/compress/archivers/zip/ExtraFieldUtils;->a:Ljava/util/Map;
a=0;// 
a=0;//     #v0=(Reference,Ljava/util/Map;);
a=0;//     invoke-interface {v0, v3}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     check-cast v0, Ljava/lang/Class;
a=0;// 
a=0;//     if-eqz v0, :cond_3
a=0;// 
a=0;//     invoke-virtual {v0}, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     check-cast v0, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;
a=0;// 
a=0;//     .line 171
a=0;//     :goto_2
a=0;//     if-eqz p1, :cond_4
a=0;// 
a=0;//     .line 172
a=0;//     add-int/lit8 v3, v1, 0x4
a=0;// 
a=0;//     #v3=(Integer);
a=0;//     invoke-interface {v0, p0, v3, v4}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->a([BII)V
a=0;// 
a=0;//     .line 177
a=0;//     :goto_3
a=0;//     invoke-interface {v2, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
a=0;// 
a=0;//     .line 183
a=0;//     add-int/lit8 v0, v4, 0x4
a=0;// 
a=0;//     #v0=(Integer);
a=0;//     add-int/2addr v0, v1
a=0;// 
a=0;//     move v1, v0
a=0;// 
a=0;//     .line 184
a=0;//     goto/16 :goto_0
a=0;// 
a=0;//     .line 170
a=0;//     :cond_3
a=0;//     #v0=(Reference,Ljava/lang/Class;);v3=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     new-instance v0, Lorg/apache/commons/compress/archivers/zip/UnrecognizedExtraField;
a=0;// 
a=0;//     #v0=(UninitRef,Lorg/apache/commons/compress/archivers/zip/UnrecognizedExtraField;);
a=0;//     invoke-direct {v0}, Lorg/apache/commons/compress/archivers/zip/UnrecognizedExtraField;-><init>()V
a=0;// 
a=0;//     #v0=(Reference,Lorg/apache/commons/compress/archivers/zip/UnrecognizedExtraField;);
a=0;//     invoke-virtual {v0, v3}, Lorg/apache/commons/compress/archivers/zip/UnrecognizedExtraField;->a(Lorg/apache/commons/compress/archivers/zip/ZipShort;)V
a=0;//     :try_end_0
a=0;//     .catch Ljava/lang/InstantiationException; {:try_start_0 .. :try_end_0} :catch_0
a=0;//     .catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_1
a=0;// 
a=0;//     goto :goto_2
a=0;// 
a=0;//     .line 178
a=0;//     :catch_0
a=0;//     #v0=(Conflicted);v3=(Conflicted);
a=0;//     move-exception v0
a=0;// 
a=0;//     .line 179
a=0;//     #v0=(Reference,Ljava/lang/InstantiationException;);
a=0;//     new-instance v1, Ljava/util/zip/ZipException;
a=0;// 
a=0;//     #v1=(UninitRef,Ljava/util/zip/ZipException;);
a=0;//     invoke-virtual {v0}, Ljava/lang/InstantiationException;->getMessage()Ljava/lang/String;
a=0;// 
a=0;//     move-result-object v2
a=0;// 
a=0;//     invoke-direct {v1, v2}, Ljava/util/zip/ZipException;-><init>(Ljava/lang/String;)V
a=0;// 
a=0;//     #v1=(Reference,Ljava/util/zip/ZipException;);
a=0;//     invoke-virtual {v1, v0}, Ljava/util/zip/ZipException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     check-cast v0, Ljava/util/zip/ZipException;
a=0;// 
a=0;//     throw v0
a=0;// 
a=0;//     .line 174
a=0;//     :cond_4
a=0;//     #v1=(Integer);v3=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     add-int/lit8 v3, v1, 0x4
a=0;// 
a=0;//     :try_start_1
a=0;//     #v3=(Integer);
a=0;//     invoke-interface {v0, p0, v3, v4}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->b([BII)V
a=0;//     :try_end_1
a=0;//     .catch Ljava/lang/InstantiationException; {:try_start_1 .. :try_end_1} :catch_0
a=0;//     .catch Ljava/lang/IllegalAccessException; {:try_start_1 .. :try_end_1} :catch_1
a=0;// 
a=0;//     goto :goto_3
a=0;// 
a=0;//     .line 180
a=0;//     :catch_1
a=0;//     #v0=(Conflicted);v3=(Conflicted);
a=0;//     move-exception v0
a=0;// 
a=0;//     .line 181
a=0;//     #v0=(Reference,Ljava/lang/IllegalAccessException;);
a=0;//     new-instance v1, Ljava/util/zip/ZipException;
a=0;// 
a=0;//     #v1=(UninitRef,Ljava/util/zip/ZipException;);
a=0;//     invoke-virtual {v0}, Ljava/lang/IllegalAccessException;->getMessage()Ljava/lang/String;
a=0;// 
a=0;//     move-result-object v2
a=0;// 
a=0;//     invoke-direct {v1, v2}, Ljava/util/zip/ZipException;-><init>(Ljava/lang/String;)V
a=0;// 
a=0;//     #v1=(Reference,Ljava/util/zip/ZipException;);
a=0;//     invoke-virtual {v1, v0}, Ljava/util/zip/ZipException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     check-cast v0, Ljava/util/zip/ZipException;
a=0;// 
a=0;//     throw v0
a=0;// 
a=0;//     .line 139
a=0;//     #v0=(Unknown);v1=(Unknown);v2=(Unknown);v3=(Unknown);v4=(Unknown);v5=(Unknown);p0=(Unknown);p1=(Unknown);p2=(Unknown);
a=0;//     nop
a=0;// 
a=0;//     :pswitch_data_0
a=0;//     .packed-switch 0x0
a=0;//         :pswitch_0
a=0;//         :pswitch_2
a=0;//         :pswitch_1
a=0;//     .end packed-switch
a=0;// .end method
a=0;// 
a=0;// .method public static b([Lorg/apache/commons/compress/archivers/zip/ZipExtraField;)[B
a=0;//     .locals 9
a=0;// 
a=0;//     .prologue
a=0;//     const/4 v8, 0x2
a=0;// 
a=0;//     #v8=(PosByte);
a=0;//     const/4 v3, 0x0
a=0;// 
a=0;//     .line 235
a=0;//     #v3=(Null);
a=0;//     array-length v0, p0
a=0;// 
a=0;//     #v0=(Integer);
a=0;//     if-lez v0, :cond_0
a=0;// 
a=0;//     array-length v0, p0
a=0;// 
a=0;//     add-int/lit8 v0, v0, -0x1
a=0;// 
a=0;//     aget-object v0, p0, v0
a=0;// 
a=0;//     #v0=(Null);
a=0;//     instance-of v0, v0, Lorg/apache/commons/compress/archivers/zip/UnparseableExtraFieldData;
a=0;// 
a=0;//     #v0=(Boolean);
a=0;//     if-eqz v0, :cond_0
a=0;// 
a=0;//     const/4 v0, 0x1
a=0;// 
a=0;//     #v0=(One);
a=0;//     move v4, v0
a=0;// 
a=0;//     .line 237
a=0;//     :goto_0
a=0;//     #v0=(Integer);v4=(Boolean);
a=0;//     if-eqz v4, :cond_1
a=0;// 
a=0;//     array-length v0, p0
a=0;// 
a=0;//     add-int/lit8 v0, v0, -0x1
a=0;// 
a=0;//     .line 240
a=0;//     :goto_1
a=0;//     mul-int/lit8 v1, v0, 0x4
a=0;// 
a=0;//     .line 241
a=0;//     #v1=(Integer);
a=0;//     array-length v5, p0
a=0;// 
a=0;//     #v5=(Integer);
a=0;//     move v2, v1
a=0;// 
a=0;//     #v2=(Integer);
a=0;//     move v1, v3
a=0;// 
a=0;//     :goto_2
a=0;//     #v6=(Conflicted);
a=0;//     if-ge v1, v5, :cond_2
a=0;// 
a=0;//     aget-object v6, p0, v1
a=0;// 
a=0;//     .line 242
a=0;//     #v6=(Null);
a=0;//     invoke-interface {v6}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->d()Lorg/apache/commons/compress/archivers/zip/ZipShort;
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     #v6=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     invoke-virtual {v6}, Lorg/apache/commons/compress/archivers/zip/ZipShort;->b()I
a=0;// 
a=0;//     move-result v6
a=0;// 
a=0;//     #v6=(Integer);
a=0;//     add-int/2addr v2, v6
a=0;// 
a=0;//     .line 241
a=0;//     add-int/lit8 v1, v1, 0x1
a=0;// 
a=0;//     goto :goto_2
a=0;// 
a=0;//     :cond_0
a=0;//     #v1=(Uninit);v2=(Uninit);v4=(Uninit);v5=(Uninit);v6=(Uninit);
a=0;//     move v4, v3
a=0;// 
a=0;//     .line 235
a=0;//     #v4=(Null);
a=0;//     goto :goto_0
a=0;// 
a=0;//     .line 237
a=0;//     :cond_1
a=0;//     #v4=(Boolean);
a=0;//     array-length v0, p0
a=0;// 
a=0;//     goto :goto_1
a=0;// 
a=0;//     .line 244
a=0;//     :cond_2
a=0;//     #v1=(Integer);v2=(Integer);v5=(Integer);v6=(Conflicted);
a=0;//     new-array v5, v2, [B
a=0;// 
a=0;//     #v5=(Reference,[B);
a=0;//     move v2, v3
a=0;// 
a=0;//     #v2=(Null);
a=0;//     move v1, v3
a=0;// 
a=0;//     .line 246
a=0;//     :goto_3
a=0;//     #v2=(Integer);v7=(Conflicted);
a=0;//     if-ge v2, v0, :cond_4
a=0;// 
a=0;//     .line 247
a=0;//     aget-object v6, p0, v2
a=0;// 
a=0;//     #v6=(Null);
a=0;//     invoke-interface {v6}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->a()Lorg/apache/commons/compress/archivers/zip/ZipShort;
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     #v6=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     invoke-virtual {v6}, Lorg/apache/commons/compress/archivers/zip/ZipShort;->a()[B
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     invoke-static {v6, v3, v5, v1, v8}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
a=0;// 
a=0;//     .line 249
a=0;//     aget-object v6, p0, v2
a=0;// 
a=0;//     #v6=(Null);
a=0;//     invoke-interface {v6}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->d()Lorg/apache/commons/compress/archivers/zip/ZipShort;
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     #v6=(Reference,Lorg/apache/commons/compress/archivers/zip/ZipShort;);
a=0;//     invoke-virtual {v6}, Lorg/apache/commons/compress/archivers/zip/ZipShort;->a()[B
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     add-int/lit8 v7, v1, 0x2
a=0;// 
a=0;//     #v7=(Integer);
a=0;//     invoke-static {v6, v3, v5, v7, v8}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
a=0;// 
a=0;//     .line 251
a=0;//     add-int/lit8 v1, v1, 0x4
a=0;// 
a=0;//     .line 252
a=0;//     aget-object v6, p0, v2
a=0;// 
a=0;//     #v6=(Null);
a=0;//     invoke-interface {v6}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->c()[B
a=0;// 
a=0;//     move-result-object v6
a=0;// 
a=0;//     .line 253
a=0;//     #v6=(Reference,[B);
a=0;//     if-eqz v6, :cond_3
a=0;// 
a=0;//     .line 254
a=0;//     array-length v7, v6
a=0;// 
a=0;//     invoke-static {v6, v3, v5, v1, v7}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
a=0;// 
a=0;//     .line 255
a=0;//     array-length v6, v6
a=0;// 
a=0;//     #v6=(Integer);
a=0;//     add-int/2addr v1, v6
a=0;// 
a=0;//     .line 246
a=0;//     :cond_3
a=0;//     #v6=(Conflicted);
a=0;//     add-int/lit8 v2, v2, 0x1
a=0;// 
a=0;//     goto :goto_3
a=0;// 
a=0;//     .line 258
a=0;//     :cond_4
a=0;//     #v7=(Conflicted);
a=0;//     if-eqz v4, :cond_5
a=0;// 
a=0;//     .line 259
a=0;//     array-length v0, p0
a=0;// 
a=0;//     add-int/lit8 v0, v0, -0x1
a=0;// 
a=0;//     aget-object v0, p0, v0
a=0;// 
a=0;//     #v0=(Null);
a=0;//     invoke-interface {v0}, Lorg/apache/commons/compress/archivers/zip/ZipExtraField;->c()[B
a=0;// 
a=0;//     move-result-object v0
a=0;// 
a=0;//     .line 260
a=0;//     #v0=(Reference,[B);
a=0;//     if-eqz v0, :cond_5
a=0;// 
a=0;//     .line 261
a=0;//     array-length v2, v0
a=0;// 
a=0;//     invoke-static {v0, v3, v5, v1, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
a=0;// 
a=0;//     .line 264
a=0;//     :cond_5
a=0;//     #v0=(Conflicted);
a=0;//     return-object v5
a=0;// .end method
}}
